import 'dart:io';

void main() async {
  try {
    print('开始执行文件操作...');
    // 先执行写入
    await writeToFile();
    // 再执行读取，验证内容
    await readFromFile();
    print('所有操作完成');
  } catch (e) {
    print('主程序出错：$e');
  }
}

Future<void> writeToFile() async {
  try {
    final file = File(
      'E:\\class\\flutter\\e_2\\library_8_8\\example\\test.txt',
    );
    print('开始写入文件: ${file.absolute.path}');
    await file.writeAsString('Hello, Dart File!\n');
    print('第一次写入完成（覆盖写）');
    await file.writeAsString('我在继续写内容。\n', mode: FileMode.append);
    print('第二次写入完成 (追加写)');
  } catch (e) {
    print('写入文件出错：$e');
    rethrow;
  }
}

Future<void> readFromFile() async {
  try {
    final file = File(
      'E:\\class\\flutter\\e_2\\library_8_8\\example\\test.txt',
    );
    print('开始读取文件: ${file.absolute.path}');
    String content = await file.readAsString();
    print('文件内容：\n$content');
  } catch (e) {
    print('读取文件出错：$e');
    rethrow;
  }
}
